SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
CREATE Procedure [dbo].[SP_TDFINA_BANC_D01]
/*-------------------------------------------------------*/
/*---Empresa              : OFISIS S.A.                --*/
/*---Cliente              : OFISIS                 --*/
/*---Sistema              : Tesoreria                  --*/
/*---Mödulo               : Empresa                    --*/
/*---Programa             : Anulaci÷n (1x1 Detallado)  --*/
/*---                       Movimiento Financiamientos --*/
/*---Script               : tdFINA_p.sql               --*/
/*---Nombre SP            : SP_TDFINA_BANC_D03         --*/
/*---Desarrollado por     : Reynaldo Menacho           --*/
/*---Fecha Creaciön       : 14/06/2004                 --*/
/*---Base Datos           : Microsoft Sql Server       --*/
/*---Versiön              : 2000                       --*/
/*---Invoca a SP          :                            --*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Modificado 1 por     :                         --*/
/*---Fecha Modificaciön   :                  --*/ 
/*---Detalle Modificaciön : --*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Comentarios                                       --*/
/*---                                                  --*/
/*---                                                  --*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Drop Proc SP_TDFINA_BANC_D03                      --*/
/*---Grant all on SP_TDFINA_BANC_D01 to public         --*/ 
/*---SP_TDFINA_BANC_D01                                --*/
/*-------------------------------------------------------*/
 @ISCO_EMPR 		TD_VC_002, 
 @ISCO_USUA_MODI 	TD_VC_008_USUA,
 @ISCO_BANC 		TD_VC_003, 
 @ISCO_TIPO_FINA 	TD_VC_020,
 @ISNU_COMP_FINA 	TD_VC_008, 
 @INNU_SECU 		TD_IN_001,
 @ISTI_ENTI 		TD_VC_001,
 @ISCO_ENTI 		TD_VC_020,
 @ISTI_DOCU_ENTI 	TD_VC_003,
 @ISNU_DOCU_ENTI 	TD_VC_020
 as
  
 Declare     
    @VNIM_TOTA TD_NU_016_004, @VNNU_SECU TD_IN_001

 Begin Tran SP_TDFINA_BANC_D01

     Delete TDFINA_BANC 
     Where  CO_EMPR = @ISCO_EMPR
     And    CO_BANC = @ISCO_BANC
     And    CO_TIPO_FINA = @ISCO_TIPO_FINA
     And    NU_COMP_FINA = @ISNU_COMP_FINA
     And    NU_SECU = @INNU_SECU 

     If @@error <> 0
         Begin
           Rollback tran
           Return
         End    

     If @ISTI_ENTI = 'C' 
	Update TMDOCU_CLIE
	Set CO_BANC = NULL, CO_TIPO_FINA = NULL, NU_UNIC_BANC = NULL, 
	FE_USUA_MODI = Getdate(), CO_USUA_MODI = @ISCO_USUA_MODI
	WHERE CO_EMPR = @ISCO_EMPR 
	And   CO_CLIE = @ISCO_ENTI
	And   CO_TIPO_DOCU = @ISTI_DOCU_ENTI 
	And   NU_DOCU_CLIE = @ISNU_DOCU_ENTI
     Else  
	Update TMDOCU_PROV
	Set CO_BANC = NULL, CO_TIPO_FINA = NULL, 
	FE_USUA_MODI = Getdate(), CO_USUA_MODI = @ISCO_USUA_MODI
	WHERE CO_EMPR = @ISCO_EMPR 
	And   CO_PROV = @ISCO_ENTI
	And   CO_TIPO_DOCU = @ISTI_DOCU_ENTI 
	And   NU_DOCU_PROV = @ISNU_DOCU_ENTI
  
     If @@error <> 0
        Begin
          Rollback tran
          Return
        End

     Select @VNIM_TOTA = Isnull(Sum(Isnull(IM_FINA,0)),0)
     From   TDFINA_BANC
     Where  CO_EMPR = @ISCO_EMPR
     And    CO_BANC = @ISCO_BANC
     And    CO_TIPO_FINA = @ISCO_TIPO_FINA
     And    NU_COMP_FINA = @ISNU_COMP_FINA

     Update TCFINA_BANC
     Set IM_FINA = Round(@VNIM_TOTA,2),
         CO_USUA_MODI = @ISCO_USUA_MODI, FE_USUA_MODI = getdate()         
     Where CO_EMPR = @ISCO_EMPR 
     And   CO_BANC = @ISCO_BANC 
     And   CO_TIPO_FINA = @ISCO_TIPO_FINA 
     And   NU_COMP_FINA = @ISNU_COMP_FINA 

     If @@error <> 0
        Begin
          Rollback tran
	    Return
        End  

commit tran

/*------------------------ Fin ------------------------------*/


GO
